<?php

class ApoioModel extends CI_Model{
    
    // **************************************************
    // Funções relativas as FUNCIONALIDADES *************
    // **************************************************
    public function getFuncionalidades(){
        return $this->db->get('funcionalidade')->result();
    }
    
    public function getFuncionalidade($id){
        $this->db->where('id', $id);
        return $this->db->get('funcionalidade')->row();
    }
    
    public function cadastrarFuncionalidade($dados){
        return $this->db->insert('funcionalidade', $dados);
    }
    
    public function editarFuncionalidade($dados){
        $this->db->where('id',$dados['id']);
        return $this->db->update('funcionalidade', $dados);
    }
    
    public function excluirFuncionalidade($id){
        $this->db->where('id', $id);
        return $this->db->delete('funcionalidade');
    }
    
    public function dropdownFuncionalidadesDoTipo($id){
        $this->db->where('tipoprojeto_id', $id);
        return $this->db->get('funcionalidade')->result();
    }
    
    public function dropFuncionalidadesTipo($id){
        $this->db->where('tipoprojeto_id', $id);
        $this->db->order_by('funcionalidade','asc');
        $this->db->select('id, funcionalidade');
        $values = $this->db->get('funcionalidade')->result_array();
        
        $options = array();
        $options[''] = '- Selecione -';
        foreach($values as $value){
		$options[$value['id']] = $value['funcionalidade'];
	}
	return $options;
    }
    // ----------------------------------------------------
    // ----------------------------------------------------
    
    // **************************************************
    // Funções relativas as DIRETORIAS ******************
    // **************************************************
    public function getDiretoria($id){
        $this->db->where('id', $id);
        return $this->db->get('diretoria')->row();
    }
    
    public function getDiretorias(){
        $this->db->order_by('diretoria', 'asc');
        return $this->db->get('diretoria')->result();
    }
    
    public function cadastrarDiretoria($dados){
        return $this->db->insert('diretoria', $dados);
    }
    
    public function editarDiretoria($dados){
        $this->db->where('id',$dados['id']);
        return $this->db->update('diretoria', $dados);
    }
    
    public function excluirDiretoria($id){
        $this->db->where('id', $id);
        return $this->db->delete('diretoria');
    }
    
    public function dropdownDiretorias(){
        $this->db->select('id, diretoria');
        $this->db->order_by('diretoria','asc');
        $values = $this->db->get('diretoria')->result_array();
        
        $options = array();
        $options[''] = '- Selecione -';
        foreach($values as $value){
		$options[$value['id']] = $value['diretoria'];
	}
	return $options;
    }
    
    public function getIdDiretoria($nome){
        $this->db->where('diretoria', $nome);
        return $this->db->get('diretoria')->row();
    }
    // ----------------------------------------------------
    // ----------------------------------------------------
    
    // **************************************************
    // Funções relativas aos CARGOS *********************
    // **************************************************
    public function getCargo($id){
        $this->db->where('id', $id);
        return $this->db->get('cargo')->row();
    }
    
    public function getCargos(){
        $this->db->order_by('cargo', 'asc');
        return $this->db->get('cargo')->result();
    }
    
    public function cadastrarCargo($dados){
        return $this->db->insert('cargo', $dados);
    }
    
    public function editarCargo($dados){
        $this->db->where('id',$dados['id']);
        return $this->db->update('cargo', $dados);
    }
    
    public function excluirCargo($id){
        $this->db->where('id', $id);
        return $this->db->delete('cargo');
    }
    
    public function dropdownCargos(){
        $this->db->select('id, cargo');
        $this->db->order_by('cargo', 'asc');
        $values = $this->db->get('cargo')->result_array();
        
        $options = array();
        $options[''] = '- Selecione -';
        foreach($values as $value){
		$options[$value['id']] = $value['cargo'];
	}
	return $options;
    }
    // ----------------------------------------------------
    // ----------------------------------------------------
    
    // **************************************************
    // Funções relativas aos TIPOS DE PROJETO ***********
    // **************************************************
    public function getTipoProjeto($id){
        $this->db->where('id', $id);
        return $this->db->get('tipo_projeto')->row();
    }
    
    public function getTiposProjeto(){
        $this->db->order_by('tipo_projeto', 'asc');
        return $this->db->get('tipo_projeto')->result();
    }
    
    public function cadastrarTipoProjeto($dados){
        return $this->db->insert('tipo_projeto', $dados);
    }
    
    public function editarTipoProjeto($dados){
        $this->db->where('id',$dados['id']);
        return $this->db->update('tipo_projeto', $dados);
    }
    
    public function excluirTipoProjeto($id){
        $this->db->where('id', $id);
        return $this->db->delete('tipo_projeto');
    }
    
    public function dropdownTipoProjeto(){
        $this->db->select('id, tipo_projeto');
        $this->db->order_by('tipo_projeto','asc');
        $values = $this->db->get('tipo_projeto')->result_array();
        
        $options = array();
        $options[''] = '- Selecione -';
        foreach($values as $value){
		$options[$value['id']] = $value['tipo_projeto'];
	}
	return $options;
    }
    // ----------------------------------------------------
    // ----------------------------------------------------
    
    // **************************************************
    // Funções relativas as TECNOLOGIAS *****************
    // **************************************************
    public function getTecnologia($id){
        $this->db->where('id', $id);
        return $this->db->get('tecnologia')->row();
    }
    
    public function getTecnologias(){
        $this->db->order_by('tecnologia', 'asc');
        return $this->db->get('tecnologia')->result();
    }
    
    public function cadastrarTecnologia($dados){
        return $this->db->insert('tecnologia', $dados);
    }
    
    public function editarTecnologia($dados){
        $this->db->where('id',$dados['id']);
        return $this->db->update('tecnologia', $dados);
    }
    
    public function excluirTecnologia($id){
        $this->db->where('id', $id);
        return $this->db->delete('tecnologia');
    }
    
    public function dropdownTecnologias(){
        $this->db->select('id, tecnologia');
        $this->db->order_by('tecnologia','asc');
        $values = $this->db->get('tecnologia')->result_array();
        
        $options = array();
        $options[''] = '- Selecione -';
        foreach($values as $value){
		$options[$value['id']] = $value['tecnologia'];
	}
	return $options;
    }
    // ----------------------------------------------------
    // ----------------------------------------------------
}
?>
